import storeApi from "../services/store"

export default {
    namespaced: true,
    state: {
        store: [],
        editStore: [],
        page:'',
        limit:'',
        total:''
       
    },
    mutations: {
        saveStore(state, store) {
            state.store = store.data;
            state.total=store.count;
            state.limit=3;
        },
        setEditStore(state, store) {
            state.editStore = store;
        },
        deleteStore(state, id) {
             state.store = state.store.filter(it => it._id !== id);
        }
        // deleteCleck(state, cid,sid){
        //     const shop= state.store.filter(it => it._id !== sid);
        //     console.log(shop)
        //     const shops= shop.employees.filter(it => it._id !== cid);
        //     console.log(shops)
        //     trueShop={
        //         ...state.store,
        //         shops
        //     }
        //     console.log(trueShop)
        //     state.store = trueShop
        // }

    },
    actions: {
        async fetch(context,value) {
            const resp = await storeApi.getStore(value,this.state.stores.page);       
            context.commit("saveStore", resp);
        },
        async addStore(context, store) {
            await storeApi.addStore(store);
        },
        async delStore(context, id) {
            await storeApi.deleteStore(id);
            context.commit("deleteStore", id);
        },
        async addCleck(context,cleck) {
            await storeApi.addCleck(cleck.data,cleck.id);
        },
        async delCleck(context,cleck) {
            await storeApi.deleteCleck(cleck.cid,cleck.sid);
        },
        async addGood(context,good) {
            await storeApi.addGood(good.data,good.id);
        },
        async delGood(context,good) {
            const resp = await storeApi.deleteGood(good.gid,good.sid);
        },
        async addService(context,service) {
            await storeApi.addService(service.data,service.id);
        },
        async delService(context,service) {
            const resp = await storeApi.deleteService(service.ssid,service.sid);
        },
        async getEditStore(context, id){
            const resp = await storeApi.getStoreById(id);
            context.commit("setEditStore", resp.data);
        },
        async modifyStore(context, u){
            await storeApi.modifyStore(u);
        },
        async modifyState(context, u){
            await storeApi.modifyState(u);
        }
    }
}